﻿using System;
using System.Collections.Generic;
using System.Collections;
using System.Text;
using OgilvyOne.Model;

namespace OgilvyOne.IDAL
{
    public interface IColumn
    {
        /// <summary>
        /// 添加新栏目
        /// </summary>
        /// <param name="column"></param>
        /// <returns></returns>
        bool addColumn(ColumnModel column);
        /// <summary>
        /// 修改栏目
        /// </summary>
        /// <param name="column"></param>
        /// <returns></returns>
        bool modColumn(ColumnModel column);
        /// <summary>
        /// 删除栏目
        /// </summary>
        /// <param name="cid">栏目ID</param>
        /// <returns></returns>
        bool delColumn(int cid);
        /// <summary>
        /// 获得栏目信息
        /// </summary>
        /// <param name="cid">栏目ID</param>
        /// <returns></returns>
        ColumnModel getColumn(int cid);
        /// <summary>
        /// 获取子栏目列表
        /// </summary>
        /// <param name="pcid">父ID</param>
        /// <returns></returns>
        IList getColumnList(int pcid);
        /// <summary>
        /// 获取所有子栏目
        /// </summary>
        /// <param name="layerid">层级ID</param>
        /// <returns></returns>
        //IList getColumnListAll(string layerid);
        /// <summary>
        /// 英文栏目名是否已存在
        /// </summary>
        /// <param name="name"></param>
        /// <param name="type">类型,1英文,0中文</param>
        /// <returns></returns>
        bool IsExistsEnclass(string name, int type);
        /// <summary>
        /// 子栏目最大排序值
        /// </summary>
        /// <param name="pid"></param>
        /// <returns></returns>
        int MaxOrder(int pid);
        /// <summary>
        /// 获取子栏目排序号栏目ID
        /// </summary>
        /// <param name="pid"></param>
        /// <param name="orderid"></param>
        /// <returns></returns>
        int OrderColumn(int pid, int orderid);
        /// <summary>
        /// 修改栏目排序号
        /// </summary>
        /// <param name="cid"></param>
        /// <param name="orderid"></param>
        /// <returns></returns>
        bool ModOrderColumn(int cid, int orderid);
        /// <summary>
        /// 获取系统栏目层级列表
        /// </summary>
        /// <param name="layerid"></param>
        /// <returns></returns>
        IList getSysColumnLayerList(string layerid);
        /// <summary>
        /// 获取层级内容栏目
        /// </summary>
        /// <param name="layerid">层级ID</param>
        /// <returns></returns>
        IList getColumnLayerList(string layerid);

        /// <summary>
        /// 获得所有栏目信息
        /// </summary>
        /// <returns></returns>
        IList getColumnAllList();

        /// <summary>
        /// 获取HTML模板标签列表
        /// </summary>
        /// <param name="layerid"></param>
        /// <returns></returns>
        IList getHtmlTempLabelList();

        ////--------------------------------------------提示7日示发布数据
        /// <summary>
        /// 栏目文章状态汇总
        /// </summary>
        /// <param name="state"></param>
        /// <returns></returns>
        IList GetArticleStateGroup(int state);
        /// <summary>
        /// 品牌发布汇总
        /// </summary>
        /// <param name="state"></param>
        /// <returns></returns>
        int GetBrandStateGroup(int state);
        /// <summary>
        /// 产品发布汇总
        /// </summary>
        /// <param name="state"></param>
        /// <returns></returns>
        int GetProductStateGroup(int state);
        /// <summary>
        /// 活动发布汇总
        /// </summary>
        /// <param name="state"></param>
        /// <returns></returns>
        IList GetActivityStateGroup(int state);
        /// <summary>
        /// 活动留发布汇总
        /// </summary>
        /// <param name="st"></param>
        /// <returns></returns>
        int GetActivityMessageGroup(int st);
        /// <summary>
        /// 活动花絮发布汇总
        /// </summary>
        /// <param name="st"></param>
        /// <returns></returns>
        int GetActivityPhotoGroup(int st);
        /// <summary>
        /// 今日在线留言
        /// </summary>
        /// <returns></returns>
        int GetDayMessages();
        ////--------------------------------------------end
    }
}
